package com.example.casper.Experiment2024.activity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;

import com.example.casper.Experiment2024.R;

public class ImageViewActivity extends AppCompatActivity {
    // 按钮和ImageView控件的声明
    private Button buttonPrevious; // 上一个按钮
    private Button buttonNext; // 下一个按钮
    private ImageView imageViewFunny; // 用于显示图片的ImageView

    // 图片资源ID数组
    private int[] imageIDArray = {
            R.drawable.funny1, R.drawable.funny2,
            R.drawable.funny3, R.drawable.funny4,
            R.drawable.funny5, R.drawable.funny6
    };

    // 当前显示图片的索引
    private int imageIDArrayCurrentIndex;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this); // 启用Edge-to-Edge模式，让内容全屏显示
        setContentView(R.layout.activity_image_view); // 设置布局文件

        // 初始化控件
        buttonPrevious = findViewById(R.id.button_previous); // 获取上一个按钮
        buttonNext = findViewById(R.id.button_next); // 获取下一个按钮
        imageViewFunny = findViewById(R.id.image_view_funny); // 获取显示图片的ImageView

        imageIDArrayCurrentIndex = 0; // 设置初始图片为数组中的第一个

        // 设置按钮点击事件监听器
        buttonPrevious.setOnClickListener(new MyButtonClickListener());
        buttonNext.setOnClickListener(new MyButtonClickListener());
    }

    // 内部类，用于处理按钮点击事件
    private class MyButtonClickListener implements View.OnClickListener {
        @Override
        public void onClick(View view) {
            // 判断点击的是"下一个"按钮还是"上一个"按钮
            if (((Button) view).getText().equals("下一个")) {
                // 点击"下一个"按钮，切换到下一个图片
                imageIDArrayCurrentIndex++;
                // 如果已到达数组末尾，则从头开始
                if (imageIDArrayCurrentIndex >= imageIDArray.length) {
                    imageIDArrayCurrentIndex = 0;
                }
            } else {
                // 点击"上一个"按钮，切换到上一个图片
                imageIDArrayCurrentIndex--;
                // 如果已到达数组开头，则返回数组末尾
                if (imageIDArrayCurrentIndex < 0) {
                    imageIDArrayCurrentIndex = imageIDArray.length - 1;
                }
            }
            // 更新ImageView显示的图片
            imageViewFunny.setImageResource(imageIDArray[imageIDArrayCurrentIndex]);
        }
    }
}
